Maîtriser Rust exige une transition du raisonnement conceptuel vers une précision lexicale. Ce processus commence par les Annexes—un mappage formel de la syntaxe du langage. Nous considérons les littéraux, les commentaires et les symboles comme les atomes du code Rust, distincts de la logique qu'ils construisent.
1. Le registre des littéraux
Rust distingue les types au niveau du compilateur grâce à des littéraux spécialisés. Alors que "..." gestionne les chaînes standards, les littéraux de chaînes brutes (r"...") empêchent la « mycose des barres obliques » en ignorant les séquences d'échappement. Pour les données de bas niveau, les littéraux octets (b"...") et les littéraux octets ASCII fournissent un mappage direct en u8 mapping.
2. La sémantique de l'espace « vide »
Le type unité (()) représente un tuple sans éléments, utilisé lorsque aucune valeur n'est renvoyée. En revanche, le type vide infini (!) indique du code qui ne retourne jamais (fonctions divergentes). Le terminateur d'instruction (;) est la frontière cruciale qui transforme une expression produisant une valeur en une instruction.
3. La documentation comme architecture
Les commentaires sont bien plus que des annotations ; ce sont des métadonnées. Commentaires de documentation externe (///) document l'élément qui suit, tandis que les commentaires de documentation interne (//!) document l'élément dans lequel ils se trouvent (comme un paquet ou la racine d'un module).